﻿
//重写BascForm的loadRecrod 用form中是与实体对应而 grid中无实体字段
Ext.override(Ext.form.BasicForm, { 
	 loadRecord : function(record,pojoName){
        this.setValues(record.data,pojoName);
        return this;
    }, 
    setValues : function(values,pojoName){
        if(Ext.isArray(values)){ 
            for(var i = 0, len = values.length; i < len; i++){
                var v = values[i];
                 var  f = this.findField(v.id); ;
                if(pojoName){
                	f = this.findField(pojoName+'.'+v.id);
                }
                if(f){
                    f.setValue(v.value);
                    if(this.trackResetOnLoad){
                        f.originalValue = f.getValue();
                    }
                }
            }
        }else{ 
            var field, id;
            for(id in values){
            	field = this.findField(id)
            	if(pojoName){
            		field = this.findField(pojoName+'.'+id)
            	}
                if(!Ext.isFunction(values[id]) && (field)){
                    field.setValue(values[id]);
                    if(this.trackResetOnLoad){
                        field.originalValue = field.getValue();
                    }
                }
            }
        }
        return this;
    }
	});
